home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / newsgroups / misc.20000114-20000217 / 000142_news@columbia.edu _Tue Jan 25 16:57:47 2000.msg < prev    next >
Internet Message Format  |  2020-01-01  |  6KB

  1. Return-Path: <news@columbia.edu>
  2. Received: from newsmaster.cc.columbia.edu (newsmaster.cc.columbia.edu [128.59.59.30])
  3.     by watsun.cc.columbia.edu (8.8.5/8.8.5) with ESMTP id QAA27704
  4.     for <kermit.misc@watsun.cc.columbia.edu>; Tue, 25 Jan 2000 16:57:47 -0500 (EST)
  5. Received: (from news@localhost)
  6.     by newsmaster.cc.columbia.edu (8.8.5/8.8.5) id QAA28522
  7.     for kermit.misc@watsun.cc.columbia.edu; Tue, 25 Jan 2000 16:51:12 -0500 (EST)
  8. X-Authentication-Warning: newsmaster.cc.columbia.edu: news set sender to <news> using -f
  9. From: fdc@watsun.cc.columbia.edu (Frank da Cruz)
  10. Subject: Case Study #16: Bootstrapping
  11. Date: 25 Jan 2000 21:51:11 GMT
  12. Organization: Columbia University
  13. Message-ID: <86l5sf$rr3$1@newsmaster.cc.columbia.edu>
  14. To: kermit.misc@columbia.edu
  15.  
  16.  
  17. Hardly a week passes without a desperate plea like the following
  18. appearing on some newsgroup or other:
  19.  
  20.   Help!  I have 20MB of files on a PC with XENIX 2.3.4 [substitute
  21.   any other old operating system], which does not have a network
  22.   card, and I need to move them to Windows 98!  My XENIX PC has only
  23.   a 5.25" diskette and my Windows PC has only a 3.5" diskette, and
  24.   they have no other media in common.
  25.  
  26. When there is no network, there are no removable media in common, and
  27. the two computers are not both UNIX (and therefore do not both have
  28. UUCP), Kermit is often the most practical alternative.
  29.  
  30.   But I don't have a copy of Kermit on my XENIX system!
  31.  
  32. This article tells how to "bootstrap" Kermit onto your old system.  The
  33. term "bootstrap" refers to "lifting yourself up by your bootstraps"; a
  34. paradox (similar to recursion, which we discussed earlier).  In this case,
  35. the paradox is: "In order to get Kermit onto your computer, you must get
  36. Kermit on your computer".  It's easier than it seems!  The key is
  37. G-Kermit, announced here a month ago:
  38.  
  39.   http://www.columbia.edu/kermit/gkermit.html
  40.  
  41. G-Kermit is a compact and portable Kermit program.  All it does is
  42. transfer files -- no frills, no conveniences.  It's small enough to load
  43. into your computer without an error-detecting and -correcting protocol.
  44. For bootstrapping, we supply uuencoded compressed binaries that are several
  45. hundreds lines long each.  All you have to do is put the the appropriate
  46. one on the target computer, uudecode it, and uncompress it.  You could do
  47. this via diskette or any other means at your disposal, but let's assume
  48. the serial port is your only option, and that the target computer:
  49.  
  50.  . Can be connected to a PC with a null modem cable (or by modem dialup);
  51.  . Is set up to allow logins on its serial port.
  52.  
  53. and that the PC is running DOS or Windows, not UNIX, just so we can
  54. illustrate the general principals of bootstrapping without relying on
  55. UNIX-specific tricks.  Let's also assume you know how to make the
  56. connection.
  57.  
  58. Here are the steps:
  59.  
  60.  1. Determine whether the target computer has gunzip.  Just type
  61.     "gunzip" and look at the response.  If it says something like
  62.     "gunzip: compressed data not read from a terminal" then you have
  63.     gunzip.  If it says something like "gunzip: command not found",
  64.     you don't.
  65.  
  66.  2. FTP the appropriate uuencoded binary to your PC.  Get the .gz.uue 
  67.     version if the target computer has gunzip, otherwise get the .Z.uue
  68.     version.  The uuencoded compressed G-Kermit binaries are in:
  69.  
  70.       ftp://kermit.columbia.edu/kermit/uue/
  71.  
  72.  3. Use your terminal program on the PC to log in to the target computer
  73.     via the serial-port or modem connection.
  74.  
  75.  4. Once you have the shell prompt on the target computer, give an stty
  76.     command to set up the appropriate kind of flow control.  Use RTS/CTS
  77.     (hardware flow control) if it is supported by your cable and by the
  78.     target operating system; otherwise use Xon/Xoff.  The UNIX stty
  79.     command depends on the UNIX version.  Here are some examples:
  80.  
  81.       stty crtscts              (for RTS/CTS)
  82.       stty rtsxoff ctsxon       (for RTS/CTS)
  83.       stty crtsxoff crtscts     (for RTS/CTS)
  84.       stty ixon ixoff -ixany    (for Xon/Xoff)
  85.  
  86.     The command for Xon/Xoff is fairly well standardized; the one for
  87.     hardware flow control is different almost everywhere.  "man stty"
  88.     tells you what the command is (if any) on your UNIX system.
  89.  
  90.  5. Set your terminal program to use the same kind of flow control.  If
  91.     your PC terminal program is from the Kermit Project, the command
  92.     would be SET FLOW RTS/CTS or SET FLOW XON/XOFF.
  93.  
  94.  6. At the shell prompt, type:
  95.  
  96.       cat > x.uue
  97.  
  98.     Now UNIX expects you to "type" commands into the x.uue file.
  99.      
  100.  7. Return to your terminal program and tell it to send the uuencoded
  101.     G-Kermit program using "ASCII" protocol.  In Kermit Project software
  102.     the command is TRANSMIT.  Example:
  103.  
  104.       transmit gku100.i386-xenix-2.3.4.Z.uue
  105.  
  106.  8. When the upload is finished, return to the terminal screen and type
  107.     Ctrl-D (hold down the Ctrl key and press the 'd' key).  This closes
  108.     the x.uue file on UNIX.  You should get the UNIX shell prompt back
  109.     (if you don't, press the Enter or Return key and then Ctrl-D again).
  110.  
  111.  9. At the UNIX shell prompt, type "uudecode x.uue".  This should produce
  112.     a file called either gkermit.Z or gkermit.gz, depending on the
  113.     compression method.
  114.  
  115. 10. If it's gkermit.Z, type "uncompress gkermit.Z".  If it's gkermit.gz,
  116.     type "gunzip gkermit.gz".  If you get any complaints like "gunzip:
  117.     gkermit.gz: invalid compressed data--crc error", go back and repeat
  118.     steps 6-10, perhaps reducing the serial speed on each end first.
  119.     Note that gunzip catches transmission errors, but uncompress doesn't.
  120.     This is another reason to use gunzip if you can.
  121.  
  122. 11. At the UNIX shell prompt, type "chmod +x gkermit".
  123.  
  124. 12. At the UNIX shell prompt, type "./gkermit".  You should see the
  125.     G-Kermit help text.  If something horrible happens instead, go back
  126.     to Step 6, perhaps reducing the serial port speed first.
  127.  
  128. Now you have a Kermit program on your UNIX computer.  See the G-Kermit
  129. web page for documentation.
  130.  
  131. G-Kermit might be all you need to get the critical files off your old
  132. UNIX computer.  But in case you need the more advanced features of
  133. C-Kermit (automatic text/binary mode switching, directory-tree transfer,
  134. atomic file movement, character-set conversion, scripting), now you can
  135. use G-Kermit to transfer the appropriate C-Kermit binary to the same
  136. computer.
  137.  
  138. - Frank